<meta name="viewport" content="width=device-width, initial-scale=1">

<link rel="apple-touch-icon-precomposed" sizes="144x144" href="../../assets/img/favicon-144.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="../../assets/img/favicon-144.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="../../assets/img/favicon-72.png">
<link rel="apple-touch-icon-precomposed" href="../../assets/img/favicon-32.png">
<link rel="shortcut icon" href="../../assets/img/favicon-32.png">

<link rel="stylesheet" href="../../assets/css/vk.css"/>
<link rel="stylesheet" href="../../assets/css/prism.css"/>


<vk-title>VkPhysicalDeviceVulkan12Features | NVK</vk-title>

<vk-centered>

  <vk-navigation>
  <vk-search-title>Search</vk-search-title>
  <vk-search>
    <input type="text" id="search" autocomplete="off" />
    <vk-search-results>
      <ol id="search-list">
        <li id="no-search-results">No Results</li>
      </ol>
    </vk-search-results>
  </vk-search>
  <vk-section-title style="margin-top: 1em;">Categories</vk-section-title>
  <vk-categories></vk-categories>
</vk-navigation>


  <vk-struct>

    <vk-name>VkPhysicalDeviceVulkan12Features</vk-name>

    <vk-description>Structure describing the Vulkan 1.2 features that can be supported by an implementation</vk-description>

    <vk-section-title>Syntax</vk-section-title>
    <vk-syntax>
      <pre><code class="language-js">physicalDeviceVulkan12Features = VkPhysicalDeviceVulkan12Features();
physicalDeviceVulkan12Features = new VkPhysicalDeviceVulkan12Features();
physicalDeviceVulkan12Features = new VkPhysicalDeviceVulkan12Features(object);</code></pre>
    </vk-syntax>

    <vk-section-title>Stub</vk-section-title>
    
    <vk-property-prototype id="expand-code" class="expand-btn"></vk-property-prototype>

    <vk-stub id="code-no-expand" style="display:none;">
      <pre><code class="language-js">let physicalDeviceVulkan12Features = new VkPhysicalDeviceVulkan12Features();
physicalDeviceVulkan12Features.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES;
physicalDeviceVulkan12Features.pNext = ;
physicalDeviceVulkan12Features.samplerMirrorClampToEdge = ;
physicalDeviceVulkan12Features.drawIndirectCount = ;
physicalDeviceVulkan12Features.storageBuffer8BitAccess = ;
physicalDeviceVulkan12Features.uniformAndStorageBuffer8BitAccess = ;
physicalDeviceVulkan12Features.storagePushConstant8 = ;
physicalDeviceVulkan12Features.shaderBufferInt64Atomics = ;
physicalDeviceVulkan12Features.shaderSharedInt64Atomics = ;
physicalDeviceVulkan12Features.shaderFloat16 = ;
physicalDeviceVulkan12Features.shaderInt8 = ;
physicalDeviceVulkan12Features.descriptorIndexing = ;
physicalDeviceVulkan12Features.shaderInputAttachmentArrayDynamicIndexing = ;
physicalDeviceVulkan12Features.shaderUniformTexelBufferArrayDynamicIndexing = ;
physicalDeviceVulkan12Features.shaderStorageTexelBufferArrayDynamicIndexing = ;
physicalDeviceVulkan12Features.shaderUniformBufferArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.shaderSampledImageArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.shaderStorageBufferArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.shaderStorageImageArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.shaderInputAttachmentArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.shaderUniformTexelBufferArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.shaderStorageTexelBufferArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.descriptorBindingUniformBufferUpdateAfterBind = ;
physicalDeviceVulkan12Features.descriptorBindingSampledImageUpdateAfterBind = ;
physicalDeviceVulkan12Features.descriptorBindingStorageImageUpdateAfterBind = ;
physicalDeviceVulkan12Features.descriptorBindingStorageBufferUpdateAfterBind = ;
physicalDeviceVulkan12Features.descriptorBindingUniformTexelBufferUpdateAfterBind = ;
physicalDeviceVulkan12Features.descriptorBindingStorageTexelBufferUpdateAfterBind = ;
physicalDeviceVulkan12Features.descriptorBindingUpdateUnusedWhilePending = ;
physicalDeviceVulkan12Features.descriptorBindingPartiallyBound = ;
physicalDeviceVulkan12Features.descriptorBindingVariableDescriptorCount = ;
physicalDeviceVulkan12Features.runtimeDescriptorArray = ;
physicalDeviceVulkan12Features.samplerFilterMinmax = ;
physicalDeviceVulkan12Features.scalarBlockLayout = ;
physicalDeviceVulkan12Features.imagelessFramebuffer = ;
physicalDeviceVulkan12Features.uniformBufferStandardLayout = ;
physicalDeviceVulkan12Features.shaderSubgroupExtendedTypes = ;
physicalDeviceVulkan12Features.separateDepthStencilLayouts = ;
physicalDeviceVulkan12Features.hostQueryReset = ;
physicalDeviceVulkan12Features.timelineSemaphore = ;
physicalDeviceVulkan12Features.bufferDeviceAddress = ;
physicalDeviceVulkan12Features.bufferDeviceAddressCaptureReplay = ;
physicalDeviceVulkan12Features.bufferDeviceAddressMultiDevice = ;
physicalDeviceVulkan12Features.vulkanMemoryModel = ;
physicalDeviceVulkan12Features.vulkanMemoryModelDeviceScope = ;
physicalDeviceVulkan12Features.vulkanMemoryModelAvailabilityVisibilityChains = ;
physicalDeviceVulkan12Features.shaderOutputViewportIndex = ;
physicalDeviceVulkan12Features.shaderOutputLayer = ;
physicalDeviceVulkan12Features.subgroupBroadcastDynamicId = ;
</code></pre>
    </vk-stub>

    <vk-stub id="code-expanded" style="display:none;">
      <pre><code class="language-js">let physicalDeviceVulkan12Features = new VkPhysicalDeviceVulkan12Features();
physicalDeviceVulkan12Features.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES;
physicalDeviceVulkan12Features.pNext = ;
physicalDeviceVulkan12Features.samplerMirrorClampToEdge = ;
physicalDeviceVulkan12Features.drawIndirectCount = ;
physicalDeviceVulkan12Features.storageBuffer8BitAccess = ;
physicalDeviceVulkan12Features.uniformAndStorageBuffer8BitAccess = ;
physicalDeviceVulkan12Features.storagePushConstant8 = ;
physicalDeviceVulkan12Features.shaderBufferInt64Atomics = ;
physicalDeviceVulkan12Features.shaderSharedInt64Atomics = ;
physicalDeviceVulkan12Features.shaderFloat16 = ;
physicalDeviceVulkan12Features.shaderInt8 = ;
physicalDeviceVulkan12Features.descriptorIndexing = ;
physicalDeviceVulkan12Features.shaderInputAttachmentArrayDynamicIndexing = ;
physicalDeviceVulkan12Features.shaderUniformTexelBufferArrayDynamicIndexing = ;
physicalDeviceVulkan12Features.shaderStorageTexelBufferArrayDynamicIndexing = ;
physicalDeviceVulkan12Features.shaderUniformBufferArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.shaderSampledImageArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.shaderStorageBufferArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.shaderStorageImageArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.shaderInputAttachmentArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.shaderUniformTexelBufferArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.shaderStorageTexelBufferArrayNonUniformIndexing = ;
physicalDeviceVulkan12Features.descriptorBindingUniformBufferUpdateAfterBind = ;
physicalDeviceVulkan12Features.descriptorBindingSampledImageUpdateAfterBind = ;
physicalDeviceVulkan12Features.descriptorBindingStorageImageUpdateAfterBind = ;
physicalDeviceVulkan12Features.descriptorBindingStorageBufferUpdateAfterBind = ;
physicalDeviceVulkan12Features.descriptorBindingUniformTexelBufferUpdateAfterBind = ;
physicalDeviceVulkan12Features.descriptorBindingStorageTexelBufferUpdateAfterBind = ;
physicalDeviceVulkan12Features.descriptorBindingUpdateUnusedWhilePending = ;
physicalDeviceVulkan12Features.descriptorBindingPartiallyBound = ;
physicalDeviceVulkan12Features.descriptorBindingVariableDescriptorCount = ;
physicalDeviceVulkan12Features.runtimeDescriptorArray = ;
physicalDeviceVulkan12Features.samplerFilterMinmax = ;
physicalDeviceVulkan12Features.scalarBlockLayout = ;
physicalDeviceVulkan12Features.imagelessFramebuffer = ;
physicalDeviceVulkan12Features.uniformBufferStandardLayout = ;
physicalDeviceVulkan12Features.shaderSubgroupExtendedTypes = ;
physicalDeviceVulkan12Features.separateDepthStencilLayouts = ;
physicalDeviceVulkan12Features.hostQueryReset = ;
physicalDeviceVulkan12Features.timelineSemaphore = ;
physicalDeviceVulkan12Features.bufferDeviceAddress = ;
physicalDeviceVulkan12Features.bufferDeviceAddressCaptureReplay = ;
physicalDeviceVulkan12Features.bufferDeviceAddressMultiDevice = ;
physicalDeviceVulkan12Features.vulkanMemoryModel = ;
physicalDeviceVulkan12Features.vulkanMemoryModelDeviceScope = ;
physicalDeviceVulkan12Features.vulkanMemoryModelAvailabilityVisibilityChains = ;
physicalDeviceVulkan12Features.shaderOutputViewportIndex = ;
physicalDeviceVulkan12Features.shaderOutputLayer = ;
physicalDeviceVulkan12Features.subgroupBroadcastDynamicId = ;
</code></pre>
    </vk-stub><vk-section-title>Parameters</vk-section-title>

    <vk-properties>
      <vk-property-entry>
        <vk-property-prototype class="no-float">object</vk-property-prototype>
        <vk-property-description>When instantiated with an object, members can be filled directly.</vk-property-description>
      </vk-property-entry>
    </vk-properties><vk-section-title>Properties</vk-section-title>

    <vk-properties>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>sType</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="number"><a href="../enums/VkStructureType.html">VkStructureType</a></vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>pNext</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="null">null</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>samplerMirrorClampToEdge</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>drawIndirectCount</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>storageBuffer8BitAccess</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>uniformAndStorageBuffer8BitAccess</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>storagePushConstant8</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderBufferInt64Atomics</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderSharedInt64Atomics</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderFloat16</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderInt8</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>descriptorIndexing</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderInputAttachmentArrayDynamicIndexing</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderUniformTexelBufferArrayDynamicIndexing</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderStorageTexelBufferArrayDynamicIndexing</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderUniformBufferArrayNonUniformIndexing</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderSampledImageArrayNonUniformIndexing</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderStorageBufferArrayNonUniformIndexing</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderStorageImageArrayNonUniformIndexing</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderInputAttachmentArrayNonUniformIndexing</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderUniformTexelBufferArrayNonUniformIndexing</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderStorageTexelBufferArrayNonUniformIndexing</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>descriptorBindingUniformBufferUpdateAfterBind</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>descriptorBindingSampledImageUpdateAfterBind</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>descriptorBindingStorageImageUpdateAfterBind</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>descriptorBindingStorageBufferUpdateAfterBind</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>descriptorBindingUniformTexelBufferUpdateAfterBind</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>descriptorBindingStorageTexelBufferUpdateAfterBind</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>descriptorBindingUpdateUnusedWhilePending</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>descriptorBindingPartiallyBound</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>descriptorBindingVariableDescriptorCount</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>runtimeDescriptorArray</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>samplerFilterMinmax</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>scalarBlockLayout</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>imagelessFramebuffer</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>uniformBufferStandardLayout</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderSubgroupExtendedTypes</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>separateDepthStencilLayouts</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>hostQueryReset</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>timelineSemaphore</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>bufferDeviceAddress</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>bufferDeviceAddressCaptureReplay</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>bufferDeviceAddressMultiDevice</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>vulkanMemoryModel</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>vulkanMemoryModelDeviceScope</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>vulkanMemoryModelAvailabilityVisibilityChains</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderOutputViewportIndex</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description> indicates whether the implementation supports the <i>ShaderViewportIndex</i> SPIR-V capability enabling variables decorated with the <i>ViewportIndex</i> built-in to be exported from vertex or tessellation evaluation shaders. If this feature is not enabled, the <i>ViewportIndex</i> built-in decoration <i>must</i> not be used on outputs in vertex or tessellation evaluation shaders.</vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>shaderOutputLayer</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description> indicates whether the implementation supports the <i>ShaderLayer</i> SPIR-V capability enabling variables decorated with the <i>Layer</i> built-in to be exported from vertex or tessellation evaluation shaders. If this feature is not enabled, the <i>Layer</i> built-in decoration <i>must</i> not be used on outputs in vertex or tessellation evaluation shaders.</vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>subgroupBroadcastDynamicId</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="boolean">Boolean</vk-property-type>
        <vk-property-description></vk-property-description>
      </vk-property-entry>
      
    </vk-properties>

    <vk-section-title>Default Properties</vk-section-title>

    <vk-properties>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.prototype.<vk-prototype-name>memoryBuffer</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="arraybuffer"><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer">ArrayBuffer</a></vk-property-type>
        <vk-property-description>Native memory reference of the structure.</vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.<vk-prototype-name>memoryLayout</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="object">Object</vk-property-type>
        <vk-property-description>Object describing the structure's memory layout.</vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.<vk-prototype-name>byteLength</vk-prototype-name></vk-property-prototype>
        <vk-property-type type="number">Number</vk-property-type>
        <vk-property-description>Total native byte length of the structure.</vk-property-description>
      </vk-property-entry>
    </vk-properties>

    <vk-section-title>Internal Properties</vk-section-title>

    <vk-description>These properties are mainly used by <i>nvk</i> internally.</vk-description>

    <vk-properties>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.<vk-prototype-name>reset</vk-prototype-name></vk-property-prototype>
        <vk-property-description>Resets the native memory of the structure.</vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.<vk-prototype-name>flush</vk-prototype-name></vk-property-prototype>
        <vk-property-description>Writes the structure's data into the native memory.</vk-property-description>
      </vk-property-entry>
      <vk-property-entry>
        <vk-property-prototype>VkPhysicalDeviceVulkan12Features.<vk-prototype-name>reflect</vk-prototype-name></vk-property-prototype>
        <vk-property-description>Synchronizes the structure's data with the native memory.</vk-property-description>
      </vk-property-entry>
    </vk-properties>

  </vk-struct>

</vk-centered>

<script>
const IS_ROOT = false;
</script>

<script type="text/javascript" src="../../assets/js/prism.min.js"></script>
<script type="text/javascript" src="../../assets/js/index.js"></script>
